1、编写一个程序,创建一个具有26个元素的数组,并在其中存储26个小写字母。并让该程序显示该数组的内容。
#include <stdio.h>
int main(void)
{
char alphabet[26];
int i;
int index=0;
for(i='a';i<='z';i++)
{
alphabet[index]=(char)i;
index++;
}
for(index = 0;index<=('z'-'a');index++)
{
printf("%3c",alphabet[index]);
}
return 0;
}
2、使用嵌套循环产生下列图案:
$
$$
$$$
$$$$
$$$$$
#include <stdio.h>
#define COLUMN 5
int main(void)
{
int i,j;
for(i=1;i<=COLUMN;i++)
{
for(j=1;j<=i;j++)
{
printf("%c",'$');
}
printf("\n");
}
return 0;
}
3、使用嵌套循环产生下列图案:
F
FE
FED
FEDC
FEDCB
FEDCBA
#include <stdio.h>
int main(void)
{
int i,j,temp,alpha;
int index = 0;
char alphabet[10];
for(alpha='A';alpha<='F';alpha++)
{
alphabet[index]=alpha;
index++;
}
temp=index;
for(i=1;i<=6;i++)
{
index = temp;
for(j=1;j<=i;j++)
{
index--;
printf("%c",alphabet[index]);
}
printf("\n");
}
return 0;
}
前段时间一直在忙期末考试,大学生伤不起。现在最近的一门考试在27号。总算是可以静下心来写几道程序了。
4、让程序要求用户输入一个大写字母,使用嵌套循环产生像下面这样的金字塔图案:
A
ABA
ABCBA(以输入C为例)
#include <stdio.h>
#include <string.h>
void rwrite(char ch);
int main(void)
{
char let;
printf("Please enter a letter:\n");
scanf("%c",&let);
printf("The letter is %c\n",let);
rwrite(let);
return 0;
}
void rwrite(char ch)
{
char lets[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int row,tempr,position,startp,endp;
int index = 0;
while(lets[index]!=ch)
{
index++;
}
for(row=1;row<=(index+1);row++)
{
tempr=row;
for(position=1;position<=(index-tempr+1);position++)
printf("%s"," ");
for(startp=0;startp<=tempr-1;startp++)
printf("%c",lets[startp]);
for(endp=(tempr-1);endp>0;endp--)
{
printf("%c",lets[endp-1]);
}
printf("\n");
}
}
5、编写一个程序打印一个表,表的每一行都给出一个整数、它的平方以及它的立方。要求用户输入表的上限与下限。使用一个for循环。
#include <stdio.h>
int main(void)
{
long int maxlimit;
long int minlimit;
long int max,min;
long int count;
printf("Please enter maxlimit and minlimit:\n");
while(scanf("%ld %ld",&maxlimit,&minlimit)==2)
{
if(maxlimit<minlimit)
{
min = maxlimit;
max = minlimit;
}
else
{
max = maxlimit;
min = minlimit;
}
printf("The maxlimit you input is %ld,the minlimit you input is %ld.\n",max,min);
for(count=min;count<=max;count++)
{
printf("Integer:%ld,Square:%ld,Cube:%ld.\n",count,count*count,count*count*count);
}
}
return 0;
}
6、编写一个程序把一个单词读入一个字符数组,然后反向打印出这个词。
#include <stdio.h>
#include <string.h>
int main(void)
{
char ch[50];
int i;
printf("Please enter a letter:\n");
scanf("%s",&ch);
printf("The letter you entered is %s.\n",ch);
for(i=strlen(ch);i>=0;i--)
{
printf("%c",ch[i]);
}
return 0;
}
7、编写一个程序,要求输入两个浮点数,然后打印出用二者的差值除以二者的乘积所得的结果。
#include <stdio.h>
int main(void)
{
double num1,num2;
printf("Please enter two floats:\n");
while(scanf("%lf %lf",&num1,&num2)==2)
{
printf("The number you entered is %lf , %lf.\n",num1,num2);
printf("The result is:%.2f\n",(num1-num2)/(num1*num2));
printf("Please enter two numbers(q to quit):");
}
printf("Thank you for using.");
return 0;
}
8、对7进行修改,让它使用一个函数来返回计算值。
#include <stdio.h>
double calculate(double,double);
int main(void)
{
double num1,num2;
printf("Please enter two floats:\n");
while(scanf("%lf %lf",&num1,&num2)==2)
{
printf("The number you entered is %lf , %lf.\n",num1,num2);
printf("The result is:%.2f\n",calculate(num1,num2));
printf("Please enter two numbers(q to quit):");
}
printf("Thank you for using.");
return 0;
}
double calculate(double num1,double num2)
{
return (num1-num2)/(num1*num2);
}
循环这章题目大多类似,先跳过了。以后找些稍微有点难度的看看。