C++面试题--(三)

博客围绕C/C++面试相关内容展开,包含输入n打印NxN矩阵的代码实现,介绍了打印当前源文件文件名、行号、时间和日期的方法,还说明了判断程序由C还是C++编译程序编译的依据,给出了相应的代码示例。

1.输入一个n ,然后在屏幕上打印出NxN 的矩阵!

例如,输入一个3,则
1 2 3
8 9 4
7 6 5
输入一个4,则
1   2 3 4
12 13 14 5
11 16 15 6
10 9 8 7

解:

#include
#include

using namespace std;

const int N=10;

void print(int a[][N],int n)
{
 int round=0;
 int i,j;
 int m=1;

 while(m<=n*n)
 {
   for(i=round;i     a[round][i]=m++;
   for(i=round+1;i     a[i][n-round-1]=m++;
   for(i=n-round-2;i>=round;i--)
    a[n-round-1][i]=m++;
   for(i=n-round-2;i>=round+1;i--)
    a[i][round]=m++;
  round++;
 }
 for(i=0;i {
   for(j=0;j   {
     cout <   }
   cout << endl;
 }
}

void main()
{
 int a[N][N];
 int round=0;
 int n,m=1;
 cout << "Please input n:";
 cin>>n;
 print(a,n);
}
2.如何打印出当前源文件的文件名以及源文件的当前行号?

 cout <<"FILE:"<<__FILE__<<endl
   <<"Line:"<<__LINE__<<endl
   <<"Time:"<<__TIME__<<endl
   <<"Date:"<<__DATE__<<endl;
3.如何判断一段程序是由C编译程序还是由C++编译程序编译的?

c++编译定义了: __cplusplus
c编译定义了: __STDC__

posted on 2005-08-21 20:26 海盗 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/Grisson/archive/2005/08/21/219723.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值