76.整数数值交换
#include<stdio.h>
int main()
{ int a=1,b=2;
a-=b;
b+=a;
a=b-a;
printf("a=%d,b=%d",a,b);
return 0;
}
77.将9个学生的考试成绩进行分段统计...
将9个学生的考试成绩进行分段统计,考试成绩放在a数组中,各分数段的人数存在b组中:成绩为60到69的人数
存到b[0]中,成绩为70到79的人数存到b[1],成绩为80到89的人数存到b[2],成绩为90到99的人数存到b[3
],成绩为100的人数存到b[4],成绩为60以下的人数存到b[5]中。请输出数组b中的数据。假设a数组中的整数
数据为:93 85 77 68 59 43 94 75 98。 要求程序简练,采用的分支语录中分支语句中支数尽量少。
#include<stdio.h>
int main()
{ int a[9]= {93,85,77,68,59,43,94,75,98},b[6]= {0},i;
for(i=0; i<9; i++)
if(a[i]<60)
b[5]++;
else
b[(a[i]-60)/10]++;
for(i=0; i<6; i++)
printf("%d",b[i]);
return 0;
}
78.利用指针设计一个函数,求字符串长度
int strlen(char *s) {
char *p=s;
while(*p)
p++;
return p-s;
}
79.不规则数组去重
(自己写的)
#include<stdio.h>
int main()
{ int a[]= {1,2,2,2,4,5,5,8,9,9};
int i,j,n=10,z,m;
for(i=0; i<n; i++) {
//更新数组长度,m必须每次全部平移后才能更新
m=n;
for(j=i+1,z=i+1; j<m; j++)
if(a[i]!=a[j]) {
a[z++]=a[j];
} else {
//记录数组移除重复数量
n--;
}
}
for(int k=0; k<n; k++)
printf("%d",a[k]);
return 0;
}
(老师写的)
#include<stdio.h>
int main()
{ int a[]= {1,2,2,2,2,4,5,5,8,9,9};
int i,j,k,n=11;
for(i=0; i<n; i++) {
for(j=i+1; j<n;)
if(a[i]==a[j]) {
for(k=j+1; k<n; k++)
a[k-1]=a[k];
n--;
} else {
j++;
}
}
for(int t=0; t<n; t++)
printf("%d",a[t]);
return 0;
}
80.统计单词个数,并记录最长单词长度(p166)
#include<stdio.h>
int main()
{
char string[81];
int i,num=0,len=0,max=0;
char c;
gets(string);
for(i=0; (c=string[i])!='\0'; i++)
if(c==' ') {
if(len>max)
max=len;
len=0;
}
else if(len==0) {
len++;
num++;
}
else {
len++;
}
printf("There are %d words ,The longest word is %d",num,max);
return 0;
}