#include <stdio.h>
#define N 4
int main()
{
int a[N] = {2, 0, 2, 2};
char b[N] = {'2', '0', '2', '2'};
int i;
printf("sizeof(int) = %d\n", sizeof(int));
printf("sizeof(char) = %d\n", sizeof(char));
printf("\n");
// 输出数组a中每个元素的地址、值
for (i=0; i<N; ++i)
printf("%p: %d\n", &a[i], a[i]);
printf("\n");
// 输出数组b中每个元素的地址、值
for (i=0; i<N; ++i)
printf("%p: %c\n", &b[i], b[i]);
printf("\n");
// 输出数组名a和b对应的值
printf("a = %p\n", a);
printf("b = %p\n", b);
return 0;
}
int类型不是连续的 char类型是连续的
#include <stdio.h>
int days_of_year(int year, int month, int day); // 函数声明
int main()
{
int year, month, day;
int days;
while (scanf_s("%d%d%d", &year, &month, &day) != 0) // 按下Ctrl+D终止
{
days = days_of_year(year, month, day); // 函数调用
printf("%4d-%02d-%02d是这一年的第%d天.\n\n", year, month, day, days);
}
return 0;
}
int days_of_year(int year, int month, int day)
{
int s=0, i;
int mon[] = { 0,31,0,31,30,31,30,31,30,31,30,31,30 };
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
mon[2] = 29;
else
mon[2] = 28;
for (i = 0; i < month; i++)
{
s += mon[i];
}
s += day;
}

#include <stdio.h>
#define N 5// 函数声明
void input(int x[], int n);
void output(int x[], int n);
double average(int x[], int n);
void sort(int x[], int n);
int main()
{
int scores[N];
double ave;
printf("录入%d个分数:\n", N);
input(scores, N);
printf("\n输出课程分数: \n");
output(scores, N);
printf("\n课程分数处理: 计算均分、排序...\n");
ave = average(scores, N);
sort(scores, N);
printf("\n输出课程均分: %.2f\n", ave);
printf("\n输出课程分数(高->低):\n"); output(scores, N);
return 0;
}// 函数定义
// 输入n个整数保存到整型数组x中
void input(int x[], int n)
{
int i;
for (i = 0; i < n; ++i)
scanf_s("%d", &x[i]);
}
// 输出整型数组x中n个元素
void output(int x[], int n)
{
int i;
for (i = 0; i < n; ++i)
printf("%d ", x[i]);
printf("\n");
}
double average(int x[], int n)
{
int i;
double s = 0.0;
for (i = 0; i < N; i++)
{
s += x[i];
}
return (s / n);
}
void sort(int x[], int n)
{
int i, j, t;
for (i = 0; i < n - 1; i++)
{
for (j = 0; j < n - 1 - i; j++)
{
if (x[j] < x[j + 1])
{
t = x[j];
x[j] = x[j + 1];
x[j + 1] = t;
}
}
}
}

#include <stdio.h>
void dec2n(int x, int n); // 函数声明
int main()
{
int x; printf("输入一个十进制整数: ");
scanf_s("%d", &x);
dec2n(x, 2); // 函数调用: 把x转换成二进制输出
dec2n(x, 8); // 函数调用: 把x转换成八进制输出
dec2n(x, 16); // 函数调用: 把x转换成十六进制输出
return 0;
}// 函数定义
//功能: 把十进制数x转换成n进制,打印输出
// 补足函数实现
void dec2n(int x, int n)
{
int i, j, r = 1;
int a[100000];
int c[100000];
char b[10];
if (n == 8 || n == 2)
{
for (i = 1; x != 0; i++)
{
a[i] = x % n;
x = x / n;
}
for (j = i - 1; j != 0; j--)
{
printf("%d", a[j]);
}
printf("\n");
}
if (n == 16)
{
for (i = 0; x != 0; i++)
{
c[i] = x % n;
x = x / n;
if (c[i] < 10)
{
b[i] = 48 + c[i];
}
else
{
b[i] = 55 + c[i];
}
}
for (j = i - 1; j >= 0; j--)
{
printf("%c", b[j]);
}
printf("\n");
}
}


#include<stdio.h>
int main()
{
int n, i, j;
while (scanf_s("%d", &n) != 0)
{
for (i = 1; i <= n; i++)
{
for (j = 1; j <= n; j++)
{
if (i == 1)
{
printf("%d ", 1);
}
else
{
if (j <= i)
{
printf("%d ", j);
}
else
{
printf("%d ", i);
}
}
}
printf("\n");
}
}
return 0;
}

#include<stdio.h>
#define N 80
int main()
{
char views1[N] = "hey,c,i hate u.";
char views2[N] = "hey,c,i love you.";
char views3[N];
int i;
for (i = 0; views1[i] != '\0'; i++)
{
views3[i] = views1[i];
}
views3[i] = '\0';
for (i = 0; views2[i] != '\0'; i++)
{
views1[i] = views2[i];
}
views1[i] = '\0';
for (i = 0; views3[i] != '\0'; i++)
{
views2[i] = views3[i];
}
views2[i] = '\0';
puts(views1);
printf("\n");
puts(views2);
return 0;
}