C语言打印方格

C语言打印方格,第1张

#include <stdioh>
int main()
{
int t;
int l[10];
int c[10];
int i,line,col;
scanf("%d", &t);
if (t > 0 && t < 10)
{
for (i = 0;i < t;i++)
{
scanf("%d %d", &l[i], &c[i]);
}
for (i = 0;i < t;i++)
{
//每组i开始的
printf("-");
for (col = 0;col < c[i];col++)
{
printf("---");
}
printf("\n");
//1行1列打印

for (line = 0;line < l[i];line++)
{
printf("|");
for (col = 0;col < c[i];col++)
{
printf(" |");
}
printf("\n");
printf("|");
for (col = 0;col < c[i];col++)
{
printf(" |");
}
printf("\n");
printf("-");
for (col = 0;col < c[i];col++)
{
printf("---");
}
printf("\n");
}
}
}
return 0;
}

#include<stdioh>
int main()
{
char a[50];
int i=0;
scanf("%c",&a[i]);
while(a[i] != '\n')
{
i++;
scanf("%c",&a[i]);
}
for( int j=0;j<i;j++)
printf("%c",a[j]);
return 0;
}
直接scanf("%s",a);
scanf会遇到空格结束输入了 所以用在用字符串时gets好些

优化后的代码,如下:
#include<iostream>
using namespace std;
int main()
{
char str[100],t;
cingetline(str,sizeof(str)); //C++读一行字符,允许输入空格,遇回车结束
for (int i=0;str[i];i++) //不要到99,要判断\0
{
if (str[i]<'v'&&str[i]>='a') 
t=(str[i]+5);
else  if(str[i]<='z'&&str[i]>='v')
t=(str[i]-21);
else
t=str[i];
cout << t ;
}
cout<<endl;
return 0;
}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10330578.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-07
下一篇 2023-05-07

发表评论

登录后才能评论

评论列表(0条)

保存