程序设计方案Word格式.docx
- 文档编号:18955164
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:51
- 大小:27.14KB
程序设计方案Word格式.docx
《程序设计方案Word格式.docx》由会员分享,可在线阅读,更多相关《程序设计方案Word格式.docx(51页珍藏版)》请在冰豆网上搜索。
,a[i])。
//将空格用逗号替换后输出
j++。
//记录替换次数
}
else
printf("
\n"
)。
%d"
j)。
//替换次数加一即是所求数的个数
}
按照“学号【空格】姓名【空格】性别【空格】年龄【回车】”的格式输入若干学生信息,将他们存储在结构体数组中(即每一个学生的信息存储在一个结构体中),输入以“##”结束。
统计学生人数,并按行输出每条学生信息。
输入若干行。
每行均依照“学号【空格】姓名【空格】性别【空格】年龄【回车】”的格式输入,输入以“##”结束。
已知最多输入20个学生信息,学号长度最大为12,姓名长度最大为10,性别为“Male”或“Female”,年龄为整数。
输出若干行。
第一行输出学生人数。
从第二行开始,每行为一个学生信息,相邻两项之间用一个逗号隔开。
S13111615301郭凤山Male19
S13111615302车润泽Male18
S13111615303孟超Female19
##
3
S13111615301,郭凤山,Male,19
S13111615302,车润泽,Male,18
S13111615303,孟超,Female,19
输入为整数和字符串
#include<
string.h>
typedefstructstu//定义结构体
charnum[12]。
charname[12]。
charsex[12]。
intage。
}STUDENT。
intmain()
STUDENTstu[20]。
inti,n=0。
。
i++)
scanf("
%s"
stu[i].num)。
if(strcmp(stu[i].num,"
##"
)==0)//实现以##结尾
break。
%s%s%d"
stu[i].name,stu[i].sex,&
stu[i].age)。
n++。
//记录学生人数
%d\n"
n)。
for(i=0。
i<
n。
i++)//按格式输出学生信息
%s,%s,%s,%d\n"
stu[i].num,stu[i].name,stu[i].sex,stu[i].age)。
return0。
输入一行以制表符分隔的整数,把它们存入数组。
统计数的个数,并用逗号分隔的方式输出。
输入一行以制表符分隔的整数。
第一行输出整数个数。
第二行输出这些整数,相邻两数之间用一个逗号隔开。
2【Tab】3【Tab】4【Tab】5【Tab】6【回车】
2,3,4,5,6
输入为int范围的整数
charnum[N]。
gets(num)。
num[i]!
i++)
if(num[i]=='
\t'
num[i]='
//将制表符替换成逗号
j++。
//输出计数结果
puts(num)。
*
***
*****
*******
输入正整数n。
依据题意输出图形。
4
intn,i,j。
scanf("
&
n)。
//输入层数
for(i=1。
i<
=n。
i++)//循环控制行数
for(j=1。
j<
=2*(n-i)。
j++)//输入空格
"
=2*i-1。
j++)//接着输入*号
*"
//输完一列后换行
从键盘输入一个正整数n(代表层数),打印如下图形。
注意中间一行左侧不留空白。
intn,i,j,m。
for(i=1。
=n。
i++)//先打印上面的三角形
for(j=i。
j<
j++)
for(j=0。
2*i-1。
i++)//打印下面的三角形
for(j=1。
=i。
=2*n-1-2*i。
输入一行以逗号分隔的整数,以回车结尾。
以每行5个,适当数量的空格分隔,左对齐的方式输出它们。
已知输入的整数最多不超过5位。
提示:
可以在输出时使用格式控制参数控制每个整数占6位且左对齐。
输入一行以逗号分隔的整数。
每行最多输出5个整数,相邻两数之间用若干个空格隔开,使得这些数左对齐。
100,21,3950,7,8,3289,943,495,34134,343,209,47,2,7293,29,2732,843,392,24
10021395078
328994349534134343
209472729329
273284339224
intnum[20]={0}。
//定义数组并初始化
intm,n=0。
while(scanf("
num[n])!
='
&
&
getchar()!
\n'
//记录整数的个数
for(m=0。
m<
m++)
if(m>
0&
(m+1)%5==0)//每行输出五个整数后换行
%-5d\n"
num[m])。
//以每个整数占6位且左对齐的方式输出
%-5d"
以每行5个,适当数量的空格分隔,右对齐的方式输出它们。
可以在输出时使用格式控制参数控制每个整数占6位且右对齐。
每行最多输出5个整数,每个整数之前放置若干个空格,使得这些数右对齐。
328994349534134343
273284339224
intnum[20]。
inti=-1,j=0。
do{
i++。
//统计输入整数的个数
num[i])。
//将输入的整数存入数组
}while(getchar()!
i<
20)。
j<
i+1。
j++)
%6d"
num[j])。
//实现每个整数占六位且右对齐
if((j+1)%5==0)//实现一行输出五个整数
输入一行以空格分隔的英文单词,以回车结尾。
已知输入的单词长度最多不超过9位。
可以在输出时使用格式控制参数控制每个单词占10位且左对齐。
输入一行以空格分隔的英文单词。
已知至少输入一个英文单词,至多输入二十个英文单词,且最后一个英文单词后紧跟回车输入。
每行最多输出5个英文单词,相邻两项之间用若干个空格隔开,使得这些英文单词左对齐。
MachinelearningisthetermthatreferstolearningpatternsinthedataInotherwords
Machinelearningistheterm
thatreferstolearningpatterns
inthedataInother
words
输入为字符串
#defineN10000
chara[N],b[N]。
inti,len=0,j=0,k。
gets(a)。
for(i=0。
a[i]!
i++)//一直查到输入行末尾
if(a[i]!
)//如果输入的不是空格
b[j]=a[i]。
//将字母存入数组b
if(a[i]=='
)//如果输入的是空格
for(k=j。
k<
10。
k++)//调整数组b的格式使其一共占10个字节
b[k]='
b[10]='
b)。
j=0。
len++。
if(len%5==0)//每五个一换行
以每行5个,适当数量的空格分隔,居中对齐的方式输出它们。
已知输入的单词长度最多不超过9位,输出时每个单词占10位。
每行最多输出5个英文单词,每个英文单词之前放置若干个空格,使得这些英文单词居中对齐。
inti,len=0,j=0,l,k。
a[i]!
b[j]=a[i]。
if(a[i]=='
b[j]='
for(k=0。
k<
(10-j)/2。
k++)
(10-j-((10-j)/2))。
if(len%5==0)
输入m行n列的二维数组A。
其中,m、n和矩阵元素均由用户从键盘输入。
已知m和n的值都不超过10。
请定义n行m列的另一个数组B,使用指针操作实现将二维数组A转置为B,并输出转置后的二维数组B。
输入包含m+1行:
第一行是整数m和n,两项之间用一个空格隔开(1<
=m,n<
=10)。
第二行到第m+1行每行均有n个整数,相邻两项之间用一个空格隔开。
输出包含n行,是转置后的二维数组B。
每行均有m个整数,相邻两项之间用一个空格隔开。
32
12
45
78
147
258
输入输出均为int范围的整数
#defineN10
intm,n,i,j。
int*a[N][N],*b[N][N]。
%d%d"
m,&
for(i=0。
m。
for(j=0。
n。
a[i][j])。
//将矩阵存入数组
b[j][i]=a[i][j]。
//将矩阵转置
for(i=0。
%d"
b[i][j])。
//输出转置后的矩阵
voidzhihuan(int*a,int*b)。
intm,n。
inti,j。
inta[N][N]。
%d%d"
memset(a,0,sizeof(a))。
m。
for(j=0。
%d"
for(j=i。
zhihuan(&
a[i][j],&
a[j][i])。
a[i][j])。
voidzhihuan(int*a,int*b)
intp。
p=*a。
*a=*b。
*b=p。
输入一行英文,从中找出最长的英文单词(若最长的英文单词有多个,则输出第一个)。
英文单词只包含大写字母和小写字母,单词由空格隔开。
要求用字符指针实现,且不能调用字符串库函数。
输入一行英文,英文单词由空格隔开。
已知至少输入一个英文单词,且最后一个英文单词后紧跟回车输入。
输出最长的英文单词。
若最长的英文单词有多个,则输出第一个。
Iamastudent
student
对于100%的数据,输入字符串的长度<
=1000
#defineM30
intchangdu(char*m)。
voidmain(void)
chara[N],b[N][M],*p=&
a[0]。
inti,k=0,j=0,max,len。
for(。
*p!
p++)
if(*p!
b[k][j]=*p。
if(*p=='
=*(p-1))
b[k][j]='
k++。
if(*(p-1)!
max=0。
len=k。
len。
if(changdu(b[i])>
changdu(b[max]))
max=i。
%s\n"
b[max])。
intchangdu(char*m)
intlen=1。
inti。
m[i]!
len++。
returnlen。
3.3整数筛选求和
试卷描述
输入一行字符串,将其中连续的阿拉伯数字视为整数,计算并输出它们的和。
输入一行字符串。
将字符串中连续的阿拉伯数字视为整数,输出整数之和。
whde12fkvf834ddei5sdlm3790wo
4641
intshuzi(char*a)。
inti,k=0,j=0,sum=0。
if(*p>
0'
*p<
9'
)
if(*(p-1)>
*(p-1)<
k。
sum=sum+shuzi(b[i])。
sum)。
intshuzi(char*a)
intsum=0,t=1,p。
for(i=strlen(a)-1。
i>
=0。
i--)
p=(*(a+i)-'
)*t。
sum=sum+p。
t=t*10。
returnsum。
输入m×
n阶矩阵A和B。
编写函数add,完成A+B的运算,结果放在二维矩阵C中。
要求把二维矩阵A、B和C以及m和n作为函数参数。
编写函数selectmin,函数负责找出C中值最小的元素。
要求把二维矩阵C、m和n作为函数参数。
编程实现上述函数,最终要求输出C和C中最小元素的值。
注意:
不要改变函数名称,注意大小写敏感;
注意不允许使用全局变量。
输入包含2*m+1行:
第一行是整数m和n(1<
=m,n<
=10),两项之间用一个空格隔开。
第二行到第m+1行每行均有n个整数,相邻两项之间用一个空格隔开,为二维矩阵A的各个项。
第m+2行到第2*m+1行每行均有n个整数,相邻两项之间用一个空格隔开,为二维矩阵B的各个项。
输出m+1行。
前m行是二维矩阵C的元素,相邻两项之间用一个空格隔开。
第m+1行是二维矩阵C中最小元素的值。
23
121
111
240
122
361
233
1
输入输出均为i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 方案