小弟初学c++,帮忙将此简单的c++代码翻译成c

来源:百度知道 编辑:UC知道 时间:2024/05/15 10:40:44
#include<iostream>
using namespace std;
int main()
{
char tmp=3;
int n;
cout<<"输入行数(奇数):";
cin>>n;
while(n%2==0)
{
cout<<"n必须为奇数:";
cin>>n;
}
for(int i=0;i<n;i++)
{
if(i<=n/2){
for(int j=n/2;j>i;j--)
{
cout<<" ";
}
for(int k=0;k<2*i+1;k++)
{
cout<<tmp;
}cout<<endl;
}else
{
for(int j=n/2;j<i;j++)
{
cout<<" ";
}
for(int k=n;k>2*(i-n/2);k--)
{
cout<<tmp;
}cout<<endl;
}
}
return main();
}
能讲解一下格式化输入输出有什么时候使用且具体用法吗?谢谢.
还有,我在vista系统下运行turbo c编译是报错.好像是说不能打开头文件.
而且,变量声明不是需要赋初值null的吗?

#include<stdio.h>
int main()
{
char tmp=3;
int n, i, j, k;
printf("输入行数(奇数):");
scanf("%d", n);
while(n%2==0)
{
printf("n必须为奇数:");
scanf("%d", n);
}
for(i=0;i<n;i++)
{
if(i<=n/2){
for(j=n/2;j>i;j--)
{
printf(" ");
}
for(k=0;k<2*i+1;k++)
{
printf("%c", tmp);
}printf("\n");
}else
{
for(j=n/2;j<i;j++)
{
printf(" ");
}
for(k=n;k>2*(i-n/2);k--)
{
printf("%c", tmp);
}printf("\n");
}
}
return 0;
}
C的所有变量必须在使用前声明,不支持for(int i = 0; ; )这种声明方式