三道C语言题目,求大神。

1.读入一个正整数n(1≤n≤6),再读入n阶矩阵a,计算该矩阵除副对角线、最后一列和最后一行以外的所有元素之和(副对角线为从矩阵的右上角至左下角的连线)&... 1.读入一个正整数n(1≤n≤6),再读入n 阶矩阵a,计算该矩阵除副对角线、最后一列和最后一行以外的所有元素之和(副对角线为从矩阵的右上角至左下角的连线)。
【输入输出样例1】(下划线部分表示输入)
Input n:4
Input array:
2 3 4 1
5 6 1 1
7 1 8 1
1 1 1 1
sum =35

2. (少于80 个字符),滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出。
【输入输出样例1】(下划线部分表示输入)
Input a string: 10
Hex=16

3.输入日期(年、月、日),输出它是该年的第几天。
【输入输出样例1】(下划线部分表示输入)
Input year, month, day: 1981 3 1
Days of year: 60
展开
 我来答
百度网友28b4182
2012-05-11 · TA获得超过7222个赞
知道大有可为答主
回答量:4847
采纳率:100%
帮助的人:1860万
展开全部
第一题

#include<stdio.h>

int main()
{
int a[7][7];
int n,i,j,sum=0;
printf("Input n:");
scanf("%d",&n);
puts("Input array:");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
if(i==n-1||j==n-1||(i+j==n-1))continue;
sum+=a[i][j];

}
}
printf("sum =%d\n",sum);
return 0;
}

第二题,

#include<stdio.h>

int main()
{
char s[100];
int n=0,i;
printf("Input a string: ");
scanf("%s",s);
for(i=0;s[i];i++)
{
if(s[i]>='0'&&s[i]<='9')
{
n=n*16+s[i]-'0';
}
else if(s[i]>='A'&&s[i]<='F')
{
n=n*16+s[i]-'A'+10;
}
else if(s[i]>='a'&&s[i]<='f')
{
n=n*16+s[i]-'a'+10;
}
}
printf("Hex=%d\n",n);
return 0;
}

第三题

#include<stdio.h>

int main()
{
int i,j,k,year,month,day,MONTH[13]={0,31,28,31,30,31,30,31,31,30,31,30,31},D;

printf("Input year, month, day:" );
scanf("%d %d %d",&year,&month,&day);

if((year%4==0&&year%100!=0)||year%400==0)
{
MONTH[2]=29;
}
else MONTH[2]=28;
D=0;

for(i=1;i<month;i++)
{
D+=MONTH[i];
}
D=D+day;

printf("Days of year: %d\n",D);
return 0;
}
a601025382s
2012-05-11 · TA获得超过8624个赞
知道小有建树答主
回答量:781
采纳率:0%
帮助的人:679万
展开全部
#include <stdio.h>
int main()
{
printf("Input n: ");
int n;
scanf("%d",&n);
printf("Input array:\n");
int a[10][10];
int i,j,s=0;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
scanf("sum=%d",&a[i][j]);
if(i!=n-1&&j!=n-1&&i!=n-j-1)
s=s+a[i][j];
}
printf("%d\n",s);
return 0;
}
2.#include <stdio.h>
#include <string.h>
int main()
{
printf("Input a string: ")
char a[100];
int i,n,s=0,j=1;
gets(a);
n=strlen(a);
for(i=n-1;i>=0;i--)
{
if(a[i]<='9'&&a[i]>='0')
{
s=s+(a[i]-'0')*j;
j=j*16;
}
else if(a[i]<='F'&&a[i]>='A')
{
s=s+(a[i]-'A'+10)*j;
j=j*16;
}
}
printf("Hex=%d\n",s);
}
3.
#include <stdio.h>
int main()
{
printf("Input year,month,day: ");
int p[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},{31,29,31,30,31,30,31,31,30,31,30,31}};
int a,b,c,t;
scanf("%d %d %d",&a,&b,&c);
if(a%4==0&&a%100!=0||a%400==0)
t=1;
else
t=0;
int s=0,i;
for(i=0;i<b-1;i++)
s=s+p[t][i];
s=s+c;
printf("Day of year: %d\n",s);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式