2018秋寒假作业4——PTA编程总结1
#include <stdio.h>
int mani(){
int n,t=7,a=3;
char ch;
int x,y;
scanf("%d %c",&n,&ch);
do{
if(n>=t){
if(n<(t+2*(a+2))){
break;
}
else if(n==(t+2*(a+2))){
t=(t+2*(a+2));
a=a+2;
break;
}
else{
t=(t+2*(a+2));
a=a+2;
}
}
}while(1);
for(int i=0;i<a;i++){
x=i;
if(x>a/2){
x=a-x-1;
}
for(int j=0;j<a;j++){ y=j;
if(y>a/2){
y=a-y-1;
}
if(y<x){if(j>a/2){
printf("\n");
break;
}
else{
printf(" ");
}
}
else{
printf("%c",ch);
}
if(j==a-1){
printf("\n");
}
}
}
printf("%d\n",n-t);
}
1.审题,根据函数所需变量定义相关数据
,根据题意使用while循环和for循环。
首先使用while循环结构和一个for循环了解到沙漏的长度和宽度,
再计算定义出其余数,输出即可。
出现了未定义主函数的错误,细心检查后解决。

完美运行
浙公网安备 33010602011771号