请将答案填在答题卡内
答题卡
一、选择题 | ||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 |
二、填空题 | ||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
第十一章
一、选择题
1.下面程序的运行结果是 ( A )。
#include<stdio.h>
int main(void)
{
int x[5]={2,4,6,8,10}, *p, **pp;
p = x;
pp = &p;
printf(“%d ”, *(p++));
printf(”%d\n”, **pp);
return 0;
}
A.4 4 B.2 4 C.2 2 D.4 6
2.对于以下变量定义,正确的赋值是 ( D )。
int *p[3], a[3];
A.p = a B.*p = a[0] C.p = &a[0] D.p[0] = &a[0]
3.下列程序的输出是 ( D )。
#include<stdio.h>
int main(void)
{
int a[12] = {1,2,3,4,5,6,7,8,9,10,11,12}, *p[4], i;
for (i = 0; i < 4; i++)
p[i] = &a[i*3];
printf("%d\n", p[3][2]);
return 0;
}
A.上述程序有错误 B.6 C.8 D.12
4.假设下列程序保存在test.c 中,编译后运行test hello world,则输出是 ( )。
#include<stdio.h>
int main(int argc, char *argv[ ])
{
printf(“%d,%s”, argc, argv[1]+1);
return 0;
}
A.2,est B.2,ello C.3,ello D.3,orld
5.设有如下定义的链表,则值为7 的表达式是 ( C )。
struct st{
int n;
struct st *next;} a[3] = {5, &a[1], 7, &a[2], 9, NULL}, *p = a;
A.p->n B.(p->n)++ C.(++p)->n D.p->next->n
二、填空题
1. 下面程序可以逐行输出由language 数组元素所指向的5 个字符串。
#include<stdio.h>
int main(void)
{
char *language[] ={“BASIC”,“FORTRAN”,“PROLOG”,“JAVA”,“C++”};
char *q ;
int k ;
for(k = 0 ; k < 5 ; k++) {
q = language[k] ;
printf(”%s\n”, *q);
}
return 0;
}
2.下面的程序输入10 个成绩,查最高分并输出。
#include<stdio.h>
int *GetMax(int score[ ], int n);
int main(void)
{
int i, score[10], *p;
for(i = 0; i < 10; i++)
scanf(”%d”, &score[i]);
p= ;
printf(“Max:%d\n”, *p);
return 0;
}
int *GetMax(int score[ ], int n)
{
int i, temp, pos = 0;
temp = score[0] ;
for(i = 0 ; i < 10 ; i++)
if(score[i] > temp)
{ temp = score[i];
pos = i ;
}
return ;
}
3. 下面程序的运行结果是 。
#include<stdio.h>
int main(void)
{
static int a[4][4];
int *p[4], i, j;
for(i = 0; i < 4; i++)
p[i] = &a[i][0];
for(i = 0 ; i < 4 ; i++) {
*(p[i] + i) = 1 ;
*(p[i] + 4 - (i + 1)) = 1;
}
for(i = 0; i < 4; i++){
for(j = 0; j < 4; j++)
printf(”%2d”, p[i][j]);
printf(”\n”);
}
return 0;
}
解答:
1 0 0 1
0 1 1 0
0 1 1 0
1 0 0 1
4.下列函数用于将链表中各结点的数据依次输出。
void print(struct student *head)
{
struct student *p ;
p=head;
if(head != NULL)
do {
printf(”%ld\n”, p->data);
printf怎么读英语 ;
} while ( );
}
5. 已建立学生“英语”课程的成绩链表(成绩存于score 域中,学号存于num 域中), 下
列函数用于输出不及格学生的学号和成绩,及补考学生人数。
void require(struct student *head)
{
struct student *p;
long x;
if( head != NULL) {
;
while(p != NULL) {
if( ) {
printf(”%7d %6.1f\n”, p->num, p->score);
x++;
}
p = p->next;
}
printf(”%ld\n”, x);
}
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论