注意:此页面搜索的是所有试题
国家开放大学C语言程序设计
double SF(double x, int n) { //n为正整数


double p=1,s=1;


int i;


for(i=1;i<=n;i++) {


p*=x;


s+=p;


}


return s;


}
简答题 (4 分) 4分

int SG(int x) { //x为大于等于2的整数


int i=2;


while(i*i<=x) {


if(x%i==0) break;


i++;


}


if(i*i<=x) return 0; else return 1;


}
简答题 (4 分) 4分

int WB(int a[], int n, int x) {


for(int i=0;i<n;i++)


if(a[i]==x) return 1;


return 0;


}
简答题 (4 分) 4分

int LK(double a[], int n) {


double s=0;


int i,m=0;


for(i=0;i<n;i++) s+=a[i];


s/=n;


for(i=0;i<n;i++)


if(a[i]>=s) m++;


return m;


}
简答题

假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为( )。
单选题 (2 分) 2分
A.
p->next=f

B.
p->next=f和f=p

C.
f=p->next

D.
f->next=p和f=

C语言中打开一个数据文件的系统函数为( )。
单选题 (2 分) 2分
A.
fgetc()

B.
fputc()

C.
fclose()

D.
fopen(

定义结构类型的变量时,不能够同时进行初始化。
判断题 (2 分) 2分
A.对
B.错

#include<stdio.h>


struct Worker {


char name[15]; //姓名


int age; //年龄


float pay; //工资


};


void main() {


struct Worker x={"wanghua",52,4300};


struct Worker y, *p;


y=x; p=&x;


printf("%s %d %6.2f\n",x.name,y.age,p->pay);


}
简答题 (

#include<stdio.h>


#include<string.h>


struct Worker {


char name[15]; //姓名


int age; //年龄


float pay; //工资


};


void main() {


struct Worker x;


char *t="liouting";


int d=38; float f=3493;


strcpy(x.name,t);


x.age=d; x.pay=f;


printf("%s %d %6.0f\n",x.name,x.age,x.pay);


}
简答题

#include<stdio.h>


struct Worker {char name[15]; int age; float pay;};


int Less(struct Worker r1, struct Worker r2) {


if(r1.age<r2.age) return 1; else return 0;


}


void main() {


struct Worker a[4]={{"abc",25,2420},{"def",58,4638},


{"ghi",49,4260},{"jkl",36,3750}};


struct Worker x=a[0];


int i;


for(i=1; i<4; i++)


if(Less(x,a[i])) x=a[i];


printf("%s %d %6.0f\n",x.name,x.age,x.pay);


}
简答题 (5 分)

void QA(struct Worker a[], int n) {


int i;


for(i=1; i<n; i++)


scanf("%s %d %f",&a[i].name,&a[i].age,&a[i].pay);


}


假定结构类型struct Worker 的定义如下:


struct Worker { char name[15]; int age; float pay;};
简答题 (

int Count(struct IntNode *f)


{ //f为指向一个单链表的表头指针


int c=0;


while(f) {


c++;


f=f->next;


}


return c;


}


假定struct IntNode的类型定义为:


struct IntNode {int data; IntNode* next;};
简答题 (5 分)

void xw1(char* fname) {


FILE* fout=fopen(fname,"w");


char a[20];


printf("每个字符串长度小于20,字符串end作为结束标志\n");


while(1) {


scanf("%s",a);


if(strcmp(a,"end")==0) break;


fputs(a,fout);


fputc(.\n.,fout);


}


fclose(fout);


}
简答题 (5 分