发布时间 : 星期二 文章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;i
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];