每日五题第五天
持之以恒呐同学们
一、矩阵相似度问题
该问题判断依据就是判断两个矩阵每个位置数字是否相同,较为简单
源码如下:
#include <stdio.h>
int main() {
int a[100][100], b[100][100];
int i = 0, j = 0;
int m, n, count = 0;
scanf("%d%d", &m, &n);
for (i = 0; i < m; i++)
for (j = 0; j < n; j++)
scanf("%d ", &a[i][j]);
for (i = 0; i < m; i++)
for (j = 0; j < n; j++)
scanf("%d ", &b[i][j]);
for (i = 0; i < m; i++)
for (j = 0; j < n; j++)
if (a[i][j] == b[i][j])
count++;
printf("%.2f", 100.0 * count / (m * n));
return 0;
}
运行结果为:
二、网购问题
源码如下:
#include <stdio.h>
int main() {
float price;
int month, date, u;
scanf("%f %02d %02d %d", &price, &month, &date, &u);
if (month == 11 && date == 11)
{
if (u)
{
price = 0.7 * price - 50;
}
else {
price = 0.7 * price;
}
}
else if (month == 12 && date == 12)
{
if (u)
{
price = 0.8 * price - 50;
}
else {
price = 0.8 * price;
}
}
if (price < 0)
{
price = 0;
}
printf("%.2f", price);
return 0;
}
运行结果如下:
三、Http状态码
这题也算是基础题,本质还是考察选择语句
源码如下:
#include <stdio.h>
int main() {
int n;
while(scanf("%d",&n)!=EOF)
{
if(200==n)
printf("OK\n");
if(202==n)
printf("Accepted\n");
if(400==n)
printf("Bad Request\n");
if(403==n)
printf("Forbidden\n");
if(404==n)
printf("Not Found\n");
if(500==n)
printf("Internal Server Error\n");
if(502==n)
printf("Bad Gateway\n");
}
return 0;
}
运行结果如下:
四、简易越阶函数
#include <stdio.h>
int main() {
int t;
float y;
while (scanf("%d", &t) != EOF)
{
if (t > 0)
printf("1\n");
else if (0 == t)
printf("%.1f\n", 1.0 / 2);
else
printf("0\n");
}
return 0;
}
五、序列中删除指定数字
源码如下:
#include <stdio.h>
int main() {
int i=0,n=0,x,j;
scanf("%d ",&n);
int a[51];
int b[51];
for(i=0;i<n;i++)
scanf("%d ",&a[i]);
scanf("%d ",&x);
for(i=0,j=0;i<n;i++)
if(x!=a[i])
{
printf("%d ",a[i]);
}
return 0;
}
今日五题就此结束