下列说法错误的是()。
A.指针变量占用的内存单元字节数就是它所指向的变量所占用的内存单元字节数。
B.指针变量指向的数据的类型,称为指针的基类型。指针变量只能指向同一基类型的变量。
C.指针变量使用之前必须初始化,如果你不知道该用什么值对其进行初始化的话,那么就先用NULL对其进行初始化。使用未初始化的结果将是无法预知的。
D.通过间接寻址运算符引用指针变量指向的变量的值,称为指针的解引用。
A.指针变量占用的内存单元字节数就是它所指向的变量所占用的内存单元字节数。
B.指针变量指向的数据的类型,称为指针的基类型。指针变量只能指向同一基类型的变量。
C.指针变量使用之前必须初始化,如果你不知道该用什么值对其进行初始化的话,那么就先用NULL对其进行初始化。使用未初始化的结果将是无法预知的。
D.通过间接寻址运算符引用指针变量指向的变量的值,称为指针的解引用。
下面程序的功能是输入某年某月某日,计算并输出它是这一年的第几天。 程序的运行结果如下: Please enter year, month, day:2014,12,29↙ yearDay = 363 按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 #include <stdio.h> int DayofYear(int year, int month, int day); int dayTab[2][13] = {{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}}; int main() { int year, month, day, yearDay; printf("Please enter year, month, day:"); scanf("%d,%d,%d", &year, &month, &day); yearDay = DayofYear(year, month, day); printf("yearDay = %d\n", yearDay); return 0; } /* 函数功能:对给定的某年某月某日,计算并返回它是这一年的第几天 */ int DayofYear(int year, int month, int day) { int i, leap; leap = ________________________; /* 若year为闰年,即leap值为1,则用第1行元素dayTab[1][i]计算; 否则leap值为0,用第0行dayTab[0][i]计算 */ for (i=1; _______; i++) { day = ________________; } return day; /* 返回计算出的day的值 */ }
A、第18行: ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) 第20: i <month 第22行: day +> B、第18行: ((year % 4 == 0) || (year % 100 != 0)) || (year % 400 == 0) 第20: i <month 第22行: day +> C、第18行: ((year % 4 == 0) && (year % 100 != 0)) && (year % 400 == 0) 第20: i<12 第22行: day + daytab[leap][i]> D、第18行: ((year % 4 != 0) && (year % 100 != 0)) || (year % 400 != 0) 第20: i<=month 第22行: day + daytab[i][leap]>
下面程序的功能是从键盘输入10个整数,用函数编程实现计算其最大值和最小值,并互换它们所在数组中的位置。程序运行结果如下: Input n(n<=10):10↙ 0 1 2 3 4 6 7 9 10 input numbers:1 –2 -1 ↙ exchange results: -2 按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 #include> void ReadData(int a[], int n); void PrintData(int a[], int n); void MaxMinExchang(int a[], int n); void Swap(int *x, int *y); int main() { int a[10], n; printf("Input n(n<=10):"); scanf("%d", &n); printf("input %d numbers:", n); readdata(a, maxminexchang(a, printf("exchange results:"); printdata(a, return 0; } * 函数功能:输入数组a的n个元素值 void readdata(int a[], int n) { i; for (i="0;" i i++) &a[i]); 函数功能:输出数组a的n个元素值 printdata(int printf("%5d", a[i]); printf("\n"); 函数功能:将数组a中的最大数与最小数位置互换 maxminexchang(________, maxvalue="a[0]," minvalue="a[0]," maxpos="0," minpos="0;" if (a[i]> maxValue) { maxValue = _______; maxPos = ____; } if (a[i] < minValue) { minValue = a[i]; minPos = i; } } Swap(________________); } /* 函数功能:两整数值互换 */ void Swap(int *x, int *y) { int ________; temp = *x; _________; *y = temp; }
A、第41行: int a[] 第49行: a[i] 第50行: i 第58行: &a[maxPos], &a[minPos] 第64行: temp 第66行: *x = *y
B、第41行: int a 第49行: a[i] 第50行: i 第58行: a[maxPos], a[minPos] 第64行: temp 第66行: *x = *y
C、第41行: int a[] 第49行: a[0] 第50行: 0 第58行: &a[maxPos], &a[minPos] 第64行: *temp 第66行: x = y
D、第41行: int a[] 第49行: a[n-1] 第50行: n-1 第58行: *a[maxPos], *a[minPos] 第64行: &temp 第66行: x = y
下面程序中子函数MonthDay()的功能是将某年的第几天转换为某月某日。程序的运行结果如下: Please enter year, yearDay:2014,100↙ month = 4, day = 10 按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 #include <stdio.h> void MonthDay(int year, int yearDay, int *pMonth, int *pDay); int dayTab[2][13] = {{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}}; int main() { int year, month, day, yearDay; printf("Please enter year, yearDay:"); scanf("%d,%d", &year, &yearDay); _________________; printf("month = %d, day = %d\n", month, day); return 0; } /* 函数功能:对给定的某一年的第几天,计算它是这一年的第几月第几日 */ void MonthDay(int year, int yearDay, int *pMonth, int *pDay) { int i, leap; leap = _________________________; for (i=1; yearDay>dayTab[leap][i]; i++) { yearDay = ______________________; } ______________; /* 将计算出的月份值赋值给pMonth所指向的变量 */ *pDay = yearDay; /* 将计算出的日号赋值给pDay所指向的变量 */ }
A、第10行: MonthDay(year, yearDay, &month, &day) 第19行: ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) 第23行: yearDay - dayTab[leap][i] 第25行: *pMonth = i
B、第10行: MonthDay(year, yearDay, month, day) 第19行: ((year % 4 == 0) || (year % 100 != 0)) || (year % 400 == 0) 第23行: yearDay - dayTab[leap][i] 第25行: pMonth = i
C、第10行: MonthDay(&year, &yearDay, &month, &day) 第19行: ((year % 4 == 0) || (year % 100 != 0)) && (year % 400 != 0) 第23行: yearDay + dayTab[i][leap] 第25行: *pMonth = i
D、第10行: MonthDay(&year, &yearDay, month, day) 第19行: ((year % 4 == 0) && (year % 100 == 0)) || (year % 400 == 0) 第23行: yearDay - dayTab[i][leap] 第25行: pMonth = i
子函数Fun的功能是比较形参变量x和y所指的内存单元中的数据大小,将两者中的最小值返回。以下程序执行后输出结果是7,8,7。按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 #include <stdio.h> int Fun(int *x,int *y) { if(___________) /*如果形参变量x所指的内存单元中的数据小于y所指的内存单元中的数据,则返回该最小值*/ return *x; else return *y; } int main() { int a=7,b=8,_______,r; p=&a; q=&b; r=____________; /*调用子函数Fun,返回变量a和b中的最小值,将其存放到变量r中。*/ printf("%d,%d,%d\n",*p,*q,r); return 0; }
A、第4行: *x<*y 第12行: *p,*q 第15行: fun(p,q)> B、第4行: x <y 第12行: *p,*q 第15行:> C、第4行: *x<*y 第12行: p,q 第15行: fun(&p,&q)> D、第4行: x <y 第12行: *p,*q 第15行:>
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!