C璇█绋嬪簭璁捐绛旀(绗笁鐗?鏉滃弸绂忕増 - 鐧惧害鏂囧簱 联系客服

发布时间 : 星期二 文章C璇█绋嬪簭璁捐绛旀(绗笁鐗?鏉滃弸绂忕増 - 鐧惧害鏂囧簱更新完毕开始阅读bb38c73fad1ffc4ffe4733687e21af45b307fe04

}

}

digit[i]='\\0';

printf(\ digit=%s\\n\

3. 编写函数实现,计算字符串的串长。 #include <> #include <>

int StringLength(char *s) { int k; for(k=0;*s++;k++); return k; }

void main() {

char string[81]; printf(\ gets(string); printf(\}

4. 编写函数实现,将一个字符串中的字母全部转换为大写。 #include <> #include <>

char *Upper(char *s) {

char *ps; ps=s; while(*ps) {

if(*ps>='a' && *ps<='z') *ps=*ps-32; ps++; } return s; }

void main() {

char string[81]; printf(\ gets(string); printf(\ printf(\}

5. 编写函数实现,计算一个字符在一个字符串中出现的次数。

#include <> #include <>

int Occur(char *s, char c) { int k=0; while(*s) { if(*s==c) k++; s++; } return k; }

void main() {

char string[81],c; printf(\ gets(string); printf(\ c=getchar();

printf(\c,Occur(string,c),string); }

6. 编写函数实现,判断一个子字符串是否在某个给定的字符串中出现。 #include <> #include <>

int IsSubstring(char *str,char *substr) {

int i,j,k,num=0; for(i=0;str[i]!='\\0' && num==0;i++) {

for(j=i,k=0;substr[k]==str[j];k++,j++) if(substr[k+1]=='\\0') { num=1; break; } } return num; }

void main() {

char string[81],sub[81]; printf(\ gets(string); printf(\ gets(sub);

}

printf(\ if(!IsSubstring(string,sub)) printf(\

printf(\

7. 有n个人围成一圈,顺序排号。由用户从键盘输入报数的起始位置,从该人开始报数(计数从0开始),凡报数为3的倍数出圈。问最后剩下的是几号 见导学例

8. 由一个整型二维数组,大小为m×n,要求找出其中最大值所在的行和列,以及该最大值。请编一个函数max,数组元素在main函数中输入,结果在函数max中输出。 见导学例

9. 由n个学生,每个学生考m门课程,要求编一函数,能检查n个学生有无不及格的课程,如果由某一学生有一门或一门以上课程不及格,就输出该学生的号码(学号从0开始)和其全部课程成绩。 见导学例

习题十一 一、选择题

1~10: A A B D D B D D D C 11~20: C B B C C

二、填空题

1.___2___、___3_ _

2. struct node *next

3. struct link *head 、 p->data 、 p->next 4.__ A _

三、编程题

1.编写程序,进行两个复数的相减。 #include <> struct Complex { double m_r,m_i; };

struct Complex sub(struct Complex c1,struct Complex c2) {

struct Complex c; = = return c; }

void main() {

struct Complex c1 ={,},c2={,}; struct Complex c; c=sub(c1,c2);

printf(“c=%g+i%g\\n”,,; }

2.定义一个包括年、月、日的结构体。输入一个日期,计算该日在本年中是第几天注意闰年问题。 #include <> struct ymd { int day; int month; int year; };

int dayof[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; int days(struct ymd *p) { int i,d; if(p->year%4==0&&p->year0!=0||p->year@0==0) dayof[2]=29; d=p->day; for(i=1;imonth;i++) d=d+dayof[i]; return (d); }

void main() { struct ymd date; int d; for(;;) { printf(\ scanf(\ if==0) break; d=days(&date); printf(\ } }

3.有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩。从键盘输入10个学生的数据,要求输出3门课程的总平均成绩,以及最高分的学生的学号、姓名、3门课程成绩、平均分数。 #include <> #define N 10 struct student {

char num[6];