以下仅个人总结。
1,下面程序的功能是计算1-3+5-7+.....-99+101的值,填空。
void main() {
int i,t, s = 0, sign = 1;
for (i = 1; i <= 101; i += 2) {
t = i * sign;
s += t;
sign = -sign;
}
printf("%d", s);
}
2,下面程序的功能是输出一个整形数组x中的最大值。
#define N 10
int fmax(int y[], int);
void main() {
int i, x[N];
for (i = 0; i < N; i++)
scanf("%d", &x[i]);
printf("%d",x[fmax(x,N)]);
}
int fmax(int y[], int n) {
int k = 0, i;
for (i = 0; i < n; i++)
if (y[i] > y[k])
k = i;
return k;
}//元素下标可以是:常量,变量,表达式,数组元素,带有返回值的函数调用
3,下面程序功能是输出所给多个字符串中最小的字符串,填空。
void main() {
char* a[] = { "bag","good","This","are","Zoo","park" }, * min;
int i;
min = a[0];
for (i = 1; i < 6; i++)
if (strcmp(a[i],min) < 0)
min = a[i];
printf("%s\n",min);
}
4,下面程序的功能是:从键盘上输入一个字符,判断它是否为小写字母,如果是,将它转换为大写
字母;如果不是则不转换。请填空。
int main()
{
char ch;
ch = getchar();
ch = (ch >= 'a' && ch <= 'z') ? ch - 32 : ch;
putchar(ch);
return 0;
}
5,下面函数的功能是对n个整数利用起泡法(冒泡法)进行由大到小排序,请填空。
void bubblesçrt(int a[], int n) {
int i, j, t;
for (i = 0; i < n - 1; i++)
for (j = 0;j<n-i-1;j++)
if (a[j] < a[j+1])
{ t = a[j]; a[j]=a[j+1]; a[j + 1] = t; }
}
6, 下面程序的功能是利用指向结构体数组元素的指针对学生信息进行访问,请填空。
struct Student { char name[20]; int score; };
int main() {
struct Student stu[40], * p;
int i;
for (i = 0; i < 40; i++)
scanf("%s%d",stu[i].name,&stu[i].score);//以"LiMing 93"的格式输入学生信息
for (p = stu; p < stu + 40; p++)//利用指针p以"LiMing,93"的格式输出每一位学生信息并换行
printf("%s,%d\n",(*p).name,(*p).score);
return 0;
}
7, 以下程序的功能是判断年份year是否闰年(若某年份能被4整除但不能被100整除,或者能被400
整除,则该年份是闰年)。请填空。
void main() {
int year;
scanf("%d",&year);
if (year%4==0&&year%100!=0||year%400==0)
printf("是闰年\n");
else
printf("不是闰年\n");
}
8,函数int Search(int a[N],int x,int y)的功能是查找并替换一维数组a中部分元素的值(把数组a中
的所有x值换成y),返回被替换的元素个数。填空。
int Search(int a[N], int x, int y) {
int n = 0, i;
for(i=0;i<N;i++)
if (a[i] == x) {
a[i] = y;
n++;
return n;
}
}
9,下面程序功能是利用指向结构体数组元素的指针,从键盘输入30名学生信息并进行访问,统计
来自“山东”的学生人数,填空。
#define N 30
typedef struct student {
int number;
char name[8];
char addr[20];
}STU;
void main() {
STU stu[N], * p;
int count = 0;
printf("输入:\n");
for (p = stu; p < stu + N; p++) {
scanf("%d %s %s",&p->number,p->name,p->addr);
if (strcmp(p->addr,"山东")==0)count++;
}
printf("%d 来自山东\n", count);
}
暂时更新结束~
拜~