admin 管理员组

文章数量: 1184232


2024年2月23日发(作者:sqlserver2008的三大应用)

1 编写一个递归算法将输入的任意一个正整数n以相反的顺序输出。例如:输入12345则输出54321。

解析:1)本题考查对函数的定义和调用的掌握情况

2)为了使算法简单,采用递归方法进行程序设计,

程序流程图

开始显示“请输入一个整数”从键盘输入整数n if

((n>=0)&&(n<=9)否是printf("%d",n);printf("%d",n%10);结束N=n/10

2编写程序,要求从键盘任意输入一个3*3的矩阵,利用二维数组的结构将输入存储,并计算该矩阵的对角线之和,并将结果显示出来。

解析:1)采用二维矩阵存储输入的数据

2)利用二重循环控制输入顺序

3)对数组对角线元素的判断是行数等于列数

程序流程

开始printf("请输入3阶矩阵:")0=>i是0=>ji<3?否利用二重循环显示矩阵否j<3?是scanf("%f",&a[i][j]);i==j?是J++Sum=sum+a[i][j]全部读取完?是结束否i++利用二重循环读取一个数组元素否

3将从键盘输入一串英文字符中的大写字符转换成小写字符,并输出转换后的字符串,要求使用指针来操作。

显示结果为:Please input char:

asf AKFJewrtrOPKs

ASFAKFJEWRTROPKS

解析:1)小写字母比大写字母的ASCII码在数值上大32,这是小写转大写的途经

2)对输入的字符串采用指针依次读取每一个字符

3)对每个字符判断,若为小写不变,为大写+32转换为小写,若不是字母,显示错误并退出

4)对字符串的输入调用系统函数gets()

程序流程

开始printf("please input your

string:");从键盘读入字符串指针p指向字符串头指针到字符串尾?否是指针p重新指向字符串头指针指向的字符串是字母吗?是否是大写字母?是否printf("输入错误!")依次显示转换后的字符退出程序ASCII码加32转换为小写字母结束p++

4 运用数据链表,建立一个学生数据库,包括学生的姓名,学号,年龄,性别,成绩信息。程序提供两个功能,当输入n时,表示输入新的记录,输入l时表示将所有学生数据输出。输入此外的字符则程序终止。

解析:

1在主函数的外部先定义两个指针变量myhead,mythis,mynew用它们来处理链表节点的联系,并在主函数中给head赋值NULL,即链表开始是空的

2如果输入的是n就执行输入新数据,用new_record()函数实现,将一个新节点插入链表中,首先要开辟新节点,就要调用malloc函数,用sizeof(struct stud_type) 来测出每个节点的长度,用new指向开辟的新节点,将新节点链接到表中,再对节点赋值。

3输入l时,将所有的数据输出,用listall()函数实现,从表头开始,依次遍历链表,到表尾时终止

开始定义结构体变量显示程序菜单用户输入表达式chCh=‘n’调用添加用户信息模块Ch=‘l’其它调用显示用户信息模块结束


本文标签: 输入 字符串 节点 显示 字符