请问这道c语言题目怎么写?

来自:    更新日期:早些时候
请问这道c语言题目怎么写?~

把字符串存成数组
排序
重点在于比较
先按照7-14位比较,为了做到这一点,可以用strncpy把这8个字符复制出来然后用strcmp比较,也可以直接用strncmp进行比较
如果相等,再用strcmp进行比较
排序完输出就好了

最简洁的方式是写一个针对这种方式的比较函数,然后调用一下qsort就好了

#include
#include
int f(int a,int b)
{
int t;
if(a>b)
{
t=a;a=b;b=t;
}
for(t=a;t%a||t%b;t+=a){};
return t;
}
int main()
{
int a[20];
int i,k;
int n;
printf("输入个数:");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("输入第%d个数:",i+1);
scanf("%d",&a[i]);
}
k=1;
for(i=0;i<n;i++)
{
k=f(k,a[i]);
}
printf("
最小公倍数为:%d
",k);
return 0;
}
输入个数:3
输入第1个数:2
输入第2个数:3
输入第3个数:4
最小公倍数为:12
Press any key to continue

#include "stdio.h"

int main(int argc,char *argv[]){

int y,m,d,sum,i,w[12]={31,28,31,30,31,30,31,31,30,31,30,31};

printf("Please enter the birth year-month-day...
");

if(scanf("%d-%d-%d",&y,&m,&d)!=3 || y<1 || m<1 || m>12 || (w[1]=y%4==0 && y%100 || y%400==0 ? 29 : 28,d>w[m-1])){

printf("Input error, exit...
");

return 0;

}

for(sum=w[m-1]-d,i=m;i<12;sum+=w[i++]);//求第一年生日后总天数

for(i=y+1,y+=18;i<y;i++)

sum+=(365+(i%4==0 && i%100 || i%400==0));//求到18岁前一年总天数

w[1] = i%4==0 && i%100 || i%400==0 ? 29 : 28;//18岁那一年是闰年?

for(m-=2;m>=0;sum+=w[m--]);//求到18岁那一年整月天数和

printf("%d
",sum+d);//输出

return 0;

}

代码图片和运行样例:



#include <iostream>
#include <string>
using namespace std;

char *strfind(char *src, char *dst)
{
int len1 = strlen(src);
int len2 = strlen(dst);
int start = len1 - 1;
int end = len2 - 1;
int i, j = len2 - 1;
for (i = start; i >= end; i--)
{
if (src[i] == dst[j])
{
j--;
if (j == -1)
{
cout << "the position is: " << i + 1 << endl;
return &src[i];
}
}
else
j = len2 - 1;
}
return NULL;
}

int main()
{
char src[100];
char dst[100];
cout << "请输入一个字符串:" << endl;
cin.getline(src, 100, '\n');
cin.clear();
cout << "请输入要查找的字符串:" << endl;
cin.getline(dst, 100, '\n');
char *temp = strfind(src, dst);
if (temp != NULL)
{
cout << "所寻找的字符串以及后面的字符串为:" << temp << endl;
}
else
cout << "no such characters!" << endl;
system("pause");
return 0;
}

有滴,点我的头像,,,


请问这道c语言题目怎么写?视频

相关评论:
  • 15037388697请问这道C语言题目怎么做?
    车力彩回答:#include<stdio.h>\/\/求最大公约数,辗转相除法 void CommFactor(int m,int n) { int r=m%n,j=0; while(r!=0) { m=n; n=r; r=m%n; j++; } printf("最大公约数: %d",n); } void main() { int m,n; printf("请输入两个数,用逗号分隔开:"); scanf("%d,%...

  • 15037388697C语言 代码 请问这道题怎么做?输入三个字母,按字母表顺序输出这三个字母...
    车力彩else { n[1]=c[1]; n[2]=c[0]; } } printf("按照字母顺序排列:%c,%c,%c \\n\\n\\n\\n",n[0],n[1],n[2]); goto aa; return 0;}功能:输入验证,大小写识别,按照ASCII码顺序排列

  • 15037388697大家好,请问C语言中这个题目怎么做啊?
    车力彩y=10 ; 没什么疑问 x=y-=5,45\/y ;问题应该在这里 这个表达式是一个逗号表达式 你先将这个表达式用括号括起来,即(x=y-=5,45\/y )那么这个逗号表达式的值就是括号内最后一个逗号后面的那个表达式的值。也就是说 如果再定义一个变量num=(x=y-=5,45\/y );那么num的值就是等于45...

  • 15037388697怎么用C语言编写这道题的程序?急~~~
    车力彩} \/\/逆序输出数组 for(j=i;j>=0;j--){ printf("%1d",t[j]);} } void main(){ int x;printf("input x:");scanf("%d",&x);TenToTwo(x);} 附加一句,如果你是学相关专业,最好努力一点。这是一个很简单的问题,如果你连这样的东西都不会。很难找工作的。已经调试过,ok....

  • 15037388697c语言编程题,题目在图上,这个题应该怎么写,快考试了,很多东西不懂_百度...
    车力彩include <stdio.h>double fun(float x, float y){ double v; if(x<y){ v = x+y; }else if(x==y){ v = 0; }else{ v = x-y; } return v;}int main(){ printf("fun(3.0,10.5) = %lf\\n", fun(3.0f, 10.5f)); return 0;} ...

  • 15037388697请问下面这道C语言分段函数题代码怎么写?
    车力彩按照题目要求编写的分段函数的C语言程序如下(见图)

  • 15037388697C语言编程:如下要求的题目咋写代码?
    车力彩代码文本:include "stdio.h"int max(int a[],int n,int *p){ for(n--,*p=0;n>=0;n--)if(a[*p]=0;n--)if(a[*p]>a[n])p=n;return a[*p];} int main(int argc,char *argv[]){ int a[20]={13,19,12,9,10,3,7,18,1,11,20,8,2,14,15,16,4,5,6,17},ma...

  • 15037388697用c语言怎么写? 给定一个由 整数 组成的 非空 数组所表示的非负整数,在...
    车力彩这题就是让你用一个数组表示一个数字,比如int n[3]={12,13,14}就是表示121314这个6位整数,并使用这个数组表示的整数模拟整数+1的运算。思路就是从数组最后一个元素的整数开始做+1运算,最高进位,则进位到数组前一个元素整数中,以此类推,如数组第一个元素的数字最高位也进位,则表示溢出,...

  • 15037388697请问一下这道C语言编程题怎么做?
    车力彩按照题目要求编写的用凯撒密码加密的C语言程序如下 include<stdio.h> int main(){ char s[80];int offset,i;fgets(s,80,stdin);scanf("%d",&offset);for(i=0;s[i]!='\\0';i++){ if('A'<=s[i] && s[i]<='Z')if(offset>=0)s[i]='A'+(s[i]-'A'+offset)%26;else s...

  • 15037388697C语言编程:下面要求的题目怎么编程?
    车力彩代码文本:include "stdio.h"include "math.h"int main(int argc,char *argv[]){ int y;for(y=0;11.2*pow(1.065,y)<=17.8*pow(1.02,y);y++);printf("Need for %d year(s).\\n",y);printf("A: %.1f trillion dollars\\n",11.2*pow(1.065,y));printf("B: %.1f ...

  • 相关主题精彩

    版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

    Copyright © 喜物网