C语言题库(整理).docVIP

  • 11
  • 0
  • 约1.89万字
  • 约 30页
  • 2020-10-22 发布于广东
  • 举报
PAGE PAGE 1 题库 1.用起泡法对N=10个整数由大到小排序。10个整数由键盘输入,排序后从屏幕输出结果 #includestdio.h void main() { int a[10],i,j,t; printf(输入十个整数:\n); for(i=0;i10;i++) scanf(%d,a[i]); for(j=0;j9;j++) for(i=0;i9-j;i++) { if(a[i]a[i+1]) t=a[i],a[i]=a[i+1],a[i+1]=t; } printf(新顺序是:\n); for(i=0;i10;i++) printf(%5d,a[i]); printf(\n); } 2.编写一函数,从实参传来一个字符串,分别统计其中数字、大写字母、小写字母和其它字符的个数,输入输出在main函数中完成 #includestdio.h int a,b,c,d; void main() { void count(char[]); char text[100]; printf(输入字符串:\n); gets(text); printf(string:); puts(text); a=0; b=0; c=0; d=0; count(text); printf(数字:%d,大写字母:%d,小写字母:%d,其他字符:%d\n,a,b,c,d); } void count(char str[]) {int i; for(i=0;str[i]!=\0;i++) if(str[i]=0str[i]=9) a++; else if(str[i]=Astr[i]=Z) b++; else if(str[i]=astr[i]=z) c++; else d++; } 3.用一函数inv将一个字符串的字符逆序排列。输入输出在main函数中完成。要求在inv中用指针处理。 #include stdio.h #include string.h void inv(char str[]) { int len,i; char t; len=strlen(str); for(i=0;ilen/2;i++) { t=*(str+i); *(str+i)=*(str+(len-i-1)); *(str+(len-i-1))=t; } } void main() { char str[20]; printf(input str:); scanf(%s,str); inv(str); printf(%s\n,str); } 4.求200之内的素数的和。从屏幕输出结果 #include stdio.h int prime(int m) { int i; for(i=2;im;i++) { if(m%i==0) break; } if(i==m) return 1; else return 0; } void main() { int i,sum=0; for(i=2;i=200;i++) { if(prime(i)==1) sum+=i; } printf(素数之和为%d\n,sum); } 5从屏幕输入一行字符,将所有的大写字母转换为小写字母,所有的小写字母转换为大写字母,其它字符不变,从屏幕输出结果 #include stdio.h #include string.h void change(char s[]) { int len,i; len=strlen(s); for(i=0;ilen;i++) { if(s[i]=65s[i]=90) { s[i]=s[i]+32; } else if(s[i]=97s[i]=122) { s[i]=s[i]-32; } else s[i]=s[i]; } } void main() { char s[100]; printf(input the string:); gets(s); change(s); printf(%s\n,s); } 6一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第10次落地时,共经过多少米?第10次落地后又反弹多高? #includestdio.h void main() {float s(int n); float h(int n); printf(第十次反弹高度:%fm.\n,h(10));

文档评论(0)

1亿VIP精品文档

相关文档